#include <sstream>
#include "ExcitationSystemDynamics.hpp"
#include "ExcOEX3T.hpp"

#include "Seconds.hpp"
#include "Seconds.hpp"
#include "Seconds.hpp"
#include "Seconds.hpp"
#include "PU.hpp"
#include "Seconds.hpp"
#include "Seconds.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "Seconds.hpp"
#include "PU.hpp"
#include "Seconds.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "PU.hpp"
#include "PU.hpp"

using namespace CIMPP;

ExcOEX3T::ExcOEX3T() {};

ExcOEX3T::~ExcOEX3T() {};






















bool assign_ExcOEX3T_t1(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t1;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_t2(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t2;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_t3(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t3;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_t4(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t4;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_ka(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->ka;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_t5(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t5;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_t6(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->t6;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_vrmax(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->vrmax;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_vrmin(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->vrmin;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_te(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->te;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_kf(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->kf;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_tf(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->tf;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_kc(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->kc;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_kd(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->kd;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_ke(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->ke;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_e1(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->e1;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_see1(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->see1;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_e2(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->e2;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

bool assign_ExcOEX3T_see2(std::stringstream &buffer, BaseClass* BaseClass_ptr1) {
	if(ExcOEX3T* element = dynamic_cast<ExcOEX3T*>(BaseClass_ptr1)) {
                buffer >> element->see2;
                if(buffer.fail())
                        return false;
                else
                        return true;
        }
        else
                return false;
}

namespace CIMPP {
	BaseClass* ExcOEX3T_factory() {
		return new ExcOEX3T;
	}
}

void ExcOEX3T::addConstructToMap(std::unordered_map<std::string, BaseClass* (*)()>& factory_map) {
	factory_map.insert(std::make_pair(std::string("cim:ExcOEX3T"), &ExcOEX3T_factory));
}

void ExcOEX3T::addPrimitiveAssignFnsToMap(std::unordered_map<std::string, assign_function>& assign_map) {
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t1"), &assign_ExcOEX3T_t1));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t2"), &assign_ExcOEX3T_t2));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t3"), &assign_ExcOEX3T_t3));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t4"), &assign_ExcOEX3T_t4));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.ka"), &assign_ExcOEX3T_ka));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t5"), &assign_ExcOEX3T_t5));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.t6"), &assign_ExcOEX3T_t6));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.vrmax"), &assign_ExcOEX3T_vrmax));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.vrmin"), &assign_ExcOEX3T_vrmin));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.te"), &assign_ExcOEX3T_te));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.kf"), &assign_ExcOEX3T_kf));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.tf"), &assign_ExcOEX3T_tf));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.kc"), &assign_ExcOEX3T_kc));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.kd"), &assign_ExcOEX3T_kd));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.ke"), &assign_ExcOEX3T_ke));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.e1"), &assign_ExcOEX3T_e1));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.see1"), &assign_ExcOEX3T_see1));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.e2"), &assign_ExcOEX3T_e2));
	assign_map.insert(std::make_pair(std::string("cim:ExcOEX3T.see2"), &assign_ExcOEX3T_see2));
}

void ExcOEX3T::addClassAssignFnsToMap(std::unordered_map<std::string, class_assign_function>& assign_map) {
																			}

const char ExcOEX3T::debugName[] = "ExcOEX3T";
const char* ExcOEX3T::debugString()
{
	return ExcOEX3T::debugName;
}

const BaseClassDefiner ExcOEX3T::declare()
{
	return BaseClassDefiner(ExcOEX3T::addConstructToMap, ExcOEX3T::addPrimitiveAssignFnsToMap, ExcOEX3T::addClassAssignFnsToMap, ExcOEX3T::debugName);
}


